09. 练习:For 循环

练习:创建用户名

写一个遍历 names 列表以创建 usernames 列表的 for 循环。要为每个姓名创建用户名,使姓名全小写并用下划线代替空格。对以下列表运行 for 循环:

names = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]

应该会创建列表:

usernames = ["joey_tribbiani", "monica_geller", "chandler_bing", "phoebe_buffay"]

Start Quiz:

names = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]
usernames = []

# write your for loop here


print(usernames)

为何要使用 range

假设我们不想创建新的列表,而是修改 names 列表本身,并编写以下代码。下面的代码有什么作用?

names = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]

for name in names:
    name = name.lower().replace(" ", "_")

print(names)
SOLUTION: 代码没有效果

练习:使用 Range 修改用户名

写一个使用 range() 遍历 usernames 中的职位以修改该列表的 for 循环。和上一道练习一样,将每个姓名改成全小写形式并用下划线代替空格。运行 for 循环后,以下列表

usernames = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]

应该更改为:

usernames = ["joey_tribbiani", "monica_geller", "chandler_bing", "phoebe_buffay"]

Start Quiz:

usernames = ["Joey Tribbiani", "Monica Geller", "Chandler Bing", "Phoebe Buffay"]

# write your for loop here


print(usernames)

练习:标记计数器

写一个 for 循环,用于遍历字符串列表 tokens 并数一下有多少个 XML 标记 。XML 是一种类似于 HTML 的数据语言。如果某个字符串以左尖括号“<”开始并以右尖括号“>”结束,则是 XML 标记。使用 count 记录这种标记的数量。

你可以假设该字符串列表不包含空字符串。

Start Quiz:

tokens = ['<greeting>', 'Hello World!', '</greeting>']
count = 0

# write your for loop here


print(count)

练习:创建 HTML 列表

写一个 for 循环,用于遍历字符串列表并创建单个字符串 html_str ,它是一个 HTML 列表。例如,如果列表是 items = ['first string', 'second string] ,输出 html_str 应该会输出:

<ul>
<li>first string</li>
<li>second string</li>
</ul>

即该字符串的第一行应该是起始标记 <ul> 。然后是源列表中的每个元素各占一行,两边是 <li> </li> 标记。该字符串的最后一行应该是结束标记 </ul>

Start Quiz:

items = ['first string', 'second string']
html_str = "<ul>\n"  # "\ n" is the character that marks the end of the line, it does
                     # the characters that are after it in html_str are on the next line

# write your code here


print(html_str)